#!/bin/sh

set -e

SDCV="$1"
TEST_DIR="$2"

unset SDCV_PAGER
unset STARDICT_DATA_DIR

test_json() {
    EXPECTED=$(echo "$1" | jq 'sort')
    shift
    RESULT=$($SDCV "$@" | jq 'sort')
    if [ "$EXPECTED" != "$RESULT" ]; then
        echo "expected $EXPECTED but got $RESULT"
        exit 1
    fi
}

test_json '[{"name": "Test synonyms", "wordcount": "2"},{"name": "Sample 1 test dictionary", "wordcount": "1"},{"name": "test_dict", "wordcount": "1"}]' -x -j -l -n --data-dir "$TEST_DIR"
test_json '[{"dict": "Test synonyms","word":"test","definition":"\u000aresult of test"}]' -x -j -n --data-dir "$TEST_DIR" foo
test_json '[]' -x -j -n --data-dir "$TEST_DIR" foobarbaaz

exit 0
